Synchronous control device

ABSTRACT

There is provided a synchronous control apparatus of high synchronous control accuracy, and the synchronous control accuracy is seldom deteriorated even if input of the position command and detection of the main shaft position are delayed. The synchronous control apparatus comprises a command generating device, a main shaft device, and a subsidiary shaft device. The command generating device includes a memory for storing the main shaft position command increments inputted into a plurality of time points from the past to the present, an output means for outputting the main shaft position command increment Δr s (i) inputted before (M−1) times of samplings in the values stored in the memory, a memory for storing the main shaft position increments inputted into a plurality of time points from the past to the present, a calculator for finding prediction values of a plurality of main shaft position increments for several times of future samplings by the dynamic characteristic model of the main shaft device including the delay of d times of samplings and also by the stored main shaft position command increments and the main shaft position increment, and a converter for finding a plurality of subsidiary shaft future position command increments by a plurality of prediction values of the main shaft position increments obtained by the calculator.

TECHNICAL FIELD

The present invention relates to a synchronous control apparatus for driving a subsidiary shaft motor synchronously with a main shaft motor.

BACKGROUND ART

According to the conventional synchronous control technique, a command is synchronously provided to the main shaft motor control device and the subsidiary shaft motor control device, respectively. Alternatively, a command is provided to the subsidiary shaft motor control device synchronously with the present position of the main shaft motor. Further, the present applicant proposed a synchronous control apparatus in which the predictive control is applied to the synchronous control as disclosed in Japanese Patent Application No. 6-288994. In the synchronous control apparatus described above, predictive control is conducted on the subsidiary shaft by a future position command of the subsidiary shaft obtained by predicting a future position of the main shaft.

However, according to the conventional synchronous control technique, it is difficult to conduct synchronous control with high accuracy because the dynamic characteristic of the main shaft is different from that of the subsidiary shaft. The art disclosed in Japanese Patent Application No. 6-288994 is proposed in order to solve the above problem and to enhance the synchronous accuracy. However, the following problems may be encountered hen the above device is used. In this device, when the future main shaft position is predicted, not the main shaft position command of the future but the main shaft position command at the present moment is used. Therefore, when the main shaft position command is changed, control can not be changed in quick response, and the synchronous accuracy is deteriorated.

According to the conventional synchronous control technique, when input of the position command into the main shaft control device and the subsidiary shaft control device is delayed or when detection of the main shaft position is delayed, the synchronous accuracy is deteriorated in accordance with the delay.

The present invention has been accomplished to solve the above problems. It is an object of the present invention to provide a synchronous control apparatus capable of realizing synchronous control, the control accuracy of which is higher than that of the conventional apparatus. Further, synchronous accuracy of this synchronous control apparatus is not deteriorated even if input of the position command is delayed and also detection of the main shaft position is delayed.

SUMMARY OF THE INVENTION

In order to solve the above problems, there is provided a synchronous control apparatus by which a subsidiary shaft motor is driven synchronously with a main shaft motor, comprising: a command generating device into which an increment of the main shaft position command Δr_(s)(i+M−1) in the sampling period is inputted and also an increment of the main shaft position Δy_(s)(i−K) before K (K≧0) times of the samplings is inputted, and from which an increment of the main shaft position command Δr_(s)(i) is outputted and also a plurality of increments of the subsidiary shaft future position Δr_(s)(i+m), m=D+, D+2, . . . , D+M, which are for several times of future samplings are outputted; a main shaft device into which a signal of the main shaft position command increment Δr_(s)(i−d) delayed by d (d≧0) times of samplings is inputted for controlling the drive of the main shaft motor, and from which an increment of the main shaft position Δy_(s)(i) is outputted; and a subsidiary shaft device into which signals Δr_(s)(i+m), m=1, 2, . . . , M of the plurality of subsidiary shaft future position command increment delayed by D (D≧2 0) times of samplings are inputted, and which controls the drive of the subsidiary shaft motor so that the subsidiary shaft position predicted by the dynamic characteristic model of the subsidiary shaft can be made to coincide with the future position command of the subsidiary shaft, wherein the command generating device includes: first memory means for storing the main shaft position command increments inputted into a plurality of time points from the past to the present; output means for outputting the main shaft position command increment Δr_(s)(i) inputted before (M−1) times of samplings in the values stored in the first memory means; second memory means for storing the main shaft position increments inputted into a plurality of time points from the past to the present; a calculator for finding predicted values of a plurality of main shaft position increments for several times of future samplings by the dynamic characteristic model of the main shaft device including delay factor which is d times of samplings and also by the stored main shaft position command increments and the stored main shaft position increments; and a converter for finding a plurality of subsidiary shaft future position command increments by a plurality of predicted values of the main shaft position increments obtained by the calculator.

According to the present invention, there is also provided a synchronous control apparatus for driving a subsidiary motor synchronously with a main motor comprising: a fine adjustment device for inputting a signal into the subsidiary shaft motor control device as a fine adjustment signal for adjusting the asynchronization, the signal obtained by adding a signal, in which an increment of the main shaft position in the sampling period or the predicted value is multiplied by a multiplier K₁, to a signal, in which the main shaft position command increment is multiplied by a multiplier K₂,; and means for switching the value of the multiplier K₁ according to the positive or negative of the main shaft position increment.

According to the present invention, there is also provided a synchronous control apparatus by which a subsidiary shaft motor is driven synchronously with a main shaft motor, comprising: a command generating device including: a memory means into which an increment of the main shaft position command Δr_(s)(i+M−1) in the sampling period is inputted and also an increment of the main shaft position Δy_(s)(i−K) before K (K≧0) times of samplings is inputted; the memory means respectively storing the inputted main shaft position command increment and the main shaft position increment; an output means for outputting the main shaft position command increment Δr_(s)(i) inputted before (M−1) times of samplings in- the values stored in the memory means; a calculator for finding predicted values of a plurality of main shaft position increments for several times of future samplings; and a converter for finding and outputting a plurality of subsidiary shaft future position command increments Δr_(s)(i+m), m=D, D+1, D+2, . . . , D+M by a plurality of predicted values of the main shaft position increments obtained by the calculator; a main shaft device into which a signal Δr_(s)(i−d) of the main shaft position command increment delayed with d (d≧0) times of samplings is inputted for controlling the drive of the main shaft motor, and from which an increment of the main shaft position Δy_(s)(i) is outputted; a subsidiary shaft device into which signals Δr_(z)(i+m), m=0, 1, . . . , M of the plurality of subsidiary shaft future position command increment delayed by D (D≧0) times of samplings are inputted, and which controls the drive of the subsidiary shaft motor so that the subsidiary shaft position predicted by the dynamic characteristic model of the subsidiary shaft can be made to coincide with the future position command of the subsidiary shaft; and a fine adjustment device for inputting a signal delayed by D (D≧0) times of samplings of a signal obtained by adding a signal, in which one of the increment of the main shaft position and the predicted value is multiplied, to a signal, in which the main shaft position command increment is multiplied, into the subsidiary shaft motor control device as a fine adjustment signal for adjusting the asynchronization, wherein the calculator of the command generating device includes: means for calculating and storing the main shaft position command r_(s) by the main shaft position command increment Δr_(s) stored in the memory means; means for calculating and storing the main shaft position y_(s) by the main shaft position increment Δr_(y) stored in the memory means; and means for determining the predicted value Δy_(s)*(i+m) of the main shaft position increment by the equation of ${y_{s}*\left( \frac{i + m}{i} \right)} = {{\sum\limits_{n = K}^{N_{a} + K}{A_{mn}{y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m}{B_{mn}{r_{s}\left( {i + m - n} \right)}}}}$ ${{\Delta \quad y_{s}*\left( {i + D} \right)} = {{y_{s}*\left( \frac{i + D}{i} \right)} - {y_{s}*\left( \frac{i - 1 + D}{i - 1} \right)}}}\quad$ m = D ${{\Delta \quad y_{s}*\left( {i + m} \right)} = {{y_{s}*\left( \frac{i + m}{i} \right)} - {y_{s}*\left( \frac{i + m - 1}{i} \right)}}}\quad$ m = D + 1, D + 2, …  , D + M

$y_{s}*\left( \frac{i_{2}}{i_{1}} \right)$

is a predicted value of the main shaft position at the time i₂ which is predicted at the time i₁, and N_(a), N_(b), A_(mn) and B_(mn) are constants found by the dynamic characteristic model of the main shaft device.

BRIEF DESCRIPTION OF THE DRAWINGS

In the accompanying drawings:

FIG. 1 is a block diagram showing a configuration of the synchronous control apparatus according to the first embodiment of the present invention;

FIG. 2 is a block diagram showing a configuration of the synchronous control apparatus according to the second embodiment of the present invention; and

FIG. 3 is a block diagram showing a configuration of the synchronous control apparatus according to the third embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to the accompanying drawings, embodiments of the present invention will be explained below.

FIG. 1 is a block diagram showing a configuration of the synchronous control apparatus according to the first embodiment of the present invention.

In FIG. 1, at the present moment i₁ an increment Δr_(s)(i+M−1) in the sampling period of the main shaft position command and an increment Δy_(s)(i−K) of the main shaft position at the sampling of K (K≧0) times before are inputted into the command generating device 1, and the command generating device 1 outputs an increment Δr_(s)(i) of the main shaft position command at the present moment and a plurality of increments Δr_(z)(i+m), m=D+1, D+2, . . . , D+M of the subsidiary shaft future position command, which are for several times of future samplings. In this case, the mark Δ represents an increment in the sampling period.

In the command generating device 1, the memory 7 stores main shaft position command increments which have been inputted into a plurality of time points from the past to the present. The output means 7′ outputs a main shaft position command increment Δr_(s)(i), which has been inputted at sampling of (M−1) times before, out of the values stored in the memory 7, as a main shaft position command increment at the present moment. The memory 8 stores main shaft position increments which have been inputted into a plurality of time points from the past to the present. The calculator 9 finds prediction values Δy_(s)*(i+m), m=D+1, D+2, . . . , D+M of a plurality of main shaft position increments for several times of future samplings by the dynamic characteristic model of the main shaft device 2 including the delay factor 4 and also by the stored main shaft position command increments and the main shaft position increment. The converter 10 finds a plurality of subsidiary shaft future position command increments Δr_(z) (i+m), m=D+1, D+2, . . . , D+M by a plurality of prediction values of the main shaft position increments obtained by the calculator. For example, when the movement of the main shaft and that of the subsidiary shaft are similar to each other, the converter 10 can be realized by a multiplier by which a constant is multiplied.

The delay factors 4, 5 and 6 are inherent to the processes of transmission, calculation and detection when the position command increment and the main shaft position increment are transmitted between the devices. Concerning the main shaft position command increment Δr_(s)(i) is inputted into the main shaft device 2 as Δr_(s)(i−d) by the delay of d (d≧0) times of the samplings according to the delay factor 4.

In the main shaft device 2, the integrator 13 finds the main shaft position command r_(s)(i−d) by the inputted main shaft position command increment Δr_(s)(i−d). The main shaft position command r_(s)(i−d) is inputted into the main shaft controller 11, and the main shaft controller 11 controls the position y_(s)(i) of the main shaft motor 12 according to the inputted value. A difference device 14 finds the increment Δy_(s)(i) by the main shaft position y_(s)(i). The main shaft position increment Δy_(s)(i) is outputted from the main shaft device 2 and changed into Δy_(s)(i−K) by the delay of K (K≧0) times of the samplings according to the delay factor 5 and then inputted into the command generating device 1.

A plurality of subsidiary shaft future position command increments are delayed by D (D≧0) times of the samplings according to the delay factor 6 and Δr_(z)(i+m), m=1, 2, . . . , M are inputted into the subsidiary shaft device 3.

In the subsidiary shaft device 3, the subsidiary shaft controller 16 controls a speed of the subsidiary shaft motor 17 according to the inputted speed command. The difference device 18 finds the increment Δy_(z)(i) by the position y_(z)(i) of the subsidiary motor shaft 17. The predictive controller 15 determines the speed command v(i) by predictive control so that the position of the subsidiary shaft for several times of future samplings, which has been predicted by the dynamic characteristic model of the subsidiary shaft motor 17 including the subsidiary shaft controller 16 and also predicted by the subsidiary shaft position increment Δy_(z)(i), can be made to coincide with the subsidiary shaft future position commands r_(z)(i+m), m=1, 2, . . . , M which are determined by a plurality of subsidiary shaft future position command increments Δr_(z) (i+m), m=1, 2 . . . , M. In the case where the predictive controller disclosed in Japanese Patent Application No. 5-197956 is used for this predictive controller 15 the speed command v(i) is determined by the following equation. $\begin{matrix} {{v(i)} = {{\sum\limits_{m = 1}^{M_{z}}{v_{m}\Delta \quad {r_{z}\left( {i + m} \right)}}} - {\sum\limits_{n = 0}^{N_{az} - 1}{p_{n}\Delta \quad {y_{z}\left( {i - n} \right)}}} + {{Ee}(i)} - {\sum\limits_{n = 1}^{N_{bz} - 1}{g_{n}{v\left( {i - n} \right)}}}}} & (1) \end{matrix}$

where M_(z) is a prediction horizon, e(i) is a positional deviation(=r_(z)(i)−y_(z)(i)), N_(az), N_(bz) are degrees of the dynamic characteristic model of the subsidiary shaft, and v_(m), p_(n), E, g_(n) are constants for predictive control.

The speed command v(i) found by the predictive control is added by the adder 20 to an output signal of a fine adjustment device 19 which is delayed by D (D≧0) times of the samplings from the v(i), and the thus added value is inputted into the subsidiary shaft controller 16 as a speed command.

The fine adjustment device 19 outputs a signal in which the signal K₂Δr_(s), which is obtained when the main shaft position command increment Δr_(s) stored in the memory 7 of the command generating device 1 is multiplied by a multiplier, and the signal K₁Δy_(s) obtained by multiplying the main shaft position increment Δy_(s)(or K₁Δy_(s)* obtained by multiplying the prediction value Δy_(s)* of the main shaft position increment) stored in the memory 8 of the command generating device 1 by a multiplier, are added to each other. In this case, the multipliers K₁ and K₂ are variable, and can be used for fine adjustment of asynchronization.

The calculator 9 provided in the command generating device 1 will be explained below.

The calculator 9 includes: means for calculating and storing the main shaft position commands r_(s)(i+M−1), r_(s)(i+M−2), . . . , r_(s)(i−K−N_(b)) by the main shaft position command increment Δr_(s) stored in the memory 7; means for calculating and storing the main shaft positions y_(s)(i−K), y_(s)(i−K−1), . . . , y_(s)(i−K−N_(a)) by the main shaft position increment Δy_(s) stored in the memory 8; and means for determining the prediction value Δy_(s)*(i+m), m=D+1, D+2, . . . , D+M of the main shaft position increment by the following equation according to the main shaft position command r_(s) and the main shaft position y_(s) which are stored in these means. $\begin{matrix} \left. \begin{matrix} {{y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = K}^{N_{a} + K}{A_{mn}{y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m}{B_{mn}{r_{s}\left( {i + m - n} \right)}}}}} \\ {{\Delta \quad y_{s}*\left( {i + m} \right)} = {{y_{s}*\left( {i + m} \right)} - {y_{s}*\left( {i + m - 1} \right)}}} \end{matrix} \right\} & (2) \end{matrix}$

In this case, N_(a), N_(b), A_(mn) and B_(mn) are constants found by the dynamic characteristic model of the main shaft device 2 including the delay factor 4.

The calculator 9 may be configured by: means for determining the prediction value Δy_(s)*(i+m), m=D+1, D+2, . . . , D+M of the main shaft position increment by the following equation according to the main shaft position command increment Δr_(s) and the main shaft position increment Δy_(s) which are stored in the memories 7 and 8. $\begin{matrix} {{\Delta \quad y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = K}^{N_{a} + K - 1}{A_{mn}\Delta \quad {y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m - 1}{B_{mn}\Delta \quad {r_{s}\left( {i + m - n} \right)}}}}} & (3) \end{matrix}$

In this case, N_(a), N_(b), A_(mn) and B_(mn) are constants found by the dynamic characteristic model of the main shaft device 2 including the delay factor 4.

The calculator 9 may be configured by: means for calculating and storing the main shaft position commands r_(s)(i+M−1), r_(s)(i+M−2), . . . , r_(s)(i−K−N_(b)+1) by the main shaft position command increment Δr_(s) stored in the memory 7; and means for determining the prediction value Δy_(s)*(i+m), m=D+1, D+2, . . . , D+M of the main shaft position increment by the following equation according to the main shaft position command r_(s) and the main shaft position increment Δy_(s) which is stored in the memory 8. $\begin{matrix} {{\Delta \quad y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = K}^{N_{a} + K - 1}{A_{mn}\Delta \quad {y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m - 1}{B_{mn}\Delta \quad {r_{s}\left( {i + m - n} \right)}}}}} & (4) \end{matrix}$

In this case, N_(a), N_(b), A_(mn) and B_(mn) are constants found by the dynamic characteristic model of the main shaft device 2 including the delay factor 4.

First, equation (2) is introduced. If a transfer function model from the main shaft position command r_(s)(i) to the main shaft position y_(s)(i) is obtained by the discrete-time system expressed by the equation of: $\begin{matrix} {{{G_{ry}(z)} = \frac{{b_{1}Z^{- 1}} + \cdots + {b_{N_{b}}Z^{- N_{b}}}}{1 - {a_{1}Z^{- 1}} - \cdots - {a_{N_{a}}Z^{- N_{a}}}}},} & (5) \end{matrix}$

the input and output model can be expressed by the following equation. $\begin{matrix} {{{\hat{y}}_{s}(i)} = {{\sum\limits_{n = 1}^{N_{a}}{a_{n}\quad {{\hat{y}}_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}\quad {r_{s}\left( {i - n} \right)}}}}} & (6) \end{matrix}$

At the time i, the measured value y_(s)(i−n) (n≧K) of the main shaft position to the time (i−K) is obtained. Therefore, the model estimate of the main shaft position after that can be expressed by the following equation.

The model estimate ŷ ;_(s)(i+m) (m≧−K+1) is expressed by the measured values as follows. $\begin{matrix} {{{{\hat{y}}_{s}\left( {i - K + 1} \right)} = {{\sum\limits_{n = 1}^{N_{a}}{a_{n}{y_{s}\left( {i - K + 1 - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}{r_{s}\left( {i - K + 1 - n} \right)}}}}}{m = {{- K} + 1}}} & \text{(7a)} \\ {{{{\hat{y}}_{s}\left( {i + m} \right)} = {{\sum\limits_{n = 1}^{m + K - 1}{a_{n}{{\hat{y}}_{s}\left( {i + m - n} \right)}}} + {\sum\limits_{n = {m + K}}^{N_{a}}{a_{n}{y_{s}\left( {i + m - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}{r_{s}\left( {i + m - n} \right)}}}}}{m > {{- K} + 1}}} & \text{(7b)} \end{matrix}$

Therefore, the following equation can be obtained. $\begin{matrix} {{{y_{s}\left( {i + m} \right)} = {{\sum\limits_{n = K}^{m + K - 1}{a_{mn}{y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m - 1}{{\hat{b}}_{mn}{r_{s}\left( {i + m - n} \right)}}}}}{m \geq {{- K} + 1}}} & (8) \end{matrix}$

In this case, the coefficientsâ ;_(mn),{circumflex over (b)}_(mn) can be given by the following equations. $\begin{matrix} \left. \begin{matrix} {{\hat{a}}_{{({{- K} + 1})}n} = a_{{({n - K + 1})}n}} & {{m = {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {{\hat{a}}_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}{\hat{a}}_{{({m - j})}n}}} + a_{({n + m})}}} & {{m > {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {{\hat{b}}_{{({{- K} + 1})}n} = b_{n}} & {{m = {{- K} + 1}},{1 \leq n \leq N_{b}}} \\ {{\hat{b}}_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}{\hat{b}}_{{({m - j})}{({n - j})}}}} + b_{n}}} & {{m > {{- K} + 1}},{1 \leq n \leq {N_{b} +}}} \\ \quad & {K + m - 1} \end{matrix} \right\} & (9) \end{matrix}$

here, a_(n)=0(n>N_(a)), b_(n)=0(n>N_(b)), {circumflex over (b)}_(mn)=0(n<1).

When the main shaft position after the time (i−K) is predicted by the following equation, the above equation (2) can be obtained $\begin{matrix} {{y_{s}*\left( {i + m} \right)} = {{{y_{s}\left( {i + m} \right)} + {\left\{ {{y_{s}\left( {i - K} \right)} - {\sum\limits_{n = 1}^{N_{a}}{a_{n}{y_{s}\left( {i - K - n} \right)}}} - {\sum\limits_{n = 1}^{N_{b}}{b_{n}{r_{s}\left( {i - K - n} \right)}}}} \right\} \quad m}} \geq {{- K} + 1}}} & (10) \end{matrix}$

In this case, the coefficients A_(mn) and B_(mn) are given by the following equation and the equation (9). $\begin{matrix} \left. \begin{matrix} {A_{mK} = {1 + {\hat{a}}_{mK}}} & {n = K} \\ {A_{mn} = {{\hat{a}}_{mn} - a_{({n - K})}}} & {{K + 1} \leq n \leq {N_{a} + K}} \\ {B_{mn} = {{\hat{b}}_{mn} - b_{({n - K - m})}}} & {1 \leq n \leq {N_{b} + K + m}} \end{matrix} \right\} & (11) \end{matrix}$

here, b_(n)=0(n<1), â ;_(m(N) _(a) _(+K))={circumflex over (b)}_(m(N) _(b) _(+K+m))=0.

Next, the equation (3) is introduced. If the transfer function model from the main shaft position command increment Δr_(s)(i) to the main shaft position increment Δy_(s)(i) is obtained by the discrete-time system expressed by the following equation, $\begin{matrix} {{G_{dd}(z)} = \frac{{b_{1}Z^{- 1}} + \cdots + {b_{N_{b}}Z^{- N_{b}}}}{1 - {a_{1}Z^{- 1}} - \cdots - {a_{N_{a}}Z^{- N_{a}}}}} & (12) \end{matrix}$

the input and output model can be expressed as follows. $\begin{matrix} {{\Delta \quad {{\hat{y}}_{s}(i)}} = {{\sum\limits_{n = 1}^{N_{a}}{a_{n}\Delta \quad {{\hat{y}}_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}\Delta \quad {r_{s}\left( {i - n} \right)}}}}} & (13) \end{matrix}$

At the time i, the measured value Δy_(s)(i−n) (n≧K) of the main shaft position increment to the time (i−K) is obtained. Therefore, when the main shaft position increment after that is predicted using the measured values by the following equation, the above equation (3) can be obtained. $\begin{matrix} {{{\Delta \quad y_{s}*\left( {i - K + 1} \right)} = {{\sum\limits_{n = 1}^{N_{a}}{a_{n}\Delta \quad {y_{s}\left( {i - K + 1 - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}\Delta \quad {r_{s}\left( {i - K + 1 - n} \right)}}}}}{m = {{- K} + 1}}} & \text{(14a)} \\ {{{\Delta \quad y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = 1}^{m + K - 1}{a_{n}\Delta \quad y_{s}*\left( {i + m - n} \right)}} + {\sum\limits_{n = {m + K}}^{N_{a}}{a_{n}\Delta \quad {y_{s}\left( {i + m - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}\Delta \quad {r_{s}\left( {i + m - n} \right)}}}}}{m > {{- K} + 1}}} & \text{(14b)} \end{matrix}$

In this case, the coefficients A_(mn) and B_(mn) are given by the following equations. $\begin{matrix} \left. \begin{matrix} {A_{{({{- K} + 1})}n} = a_{({n - K + 1})}} & {{m = {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {A_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}A_{{({m - j})}n}}} + a_{({n + m})}}} & {{m > {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {B_{{({{- K} + 1})}n} = b_{n}} & {{m = {{- K} + 1}},{1 \leq n \leq N_{b}}} \\ {B_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}B_{{({m - j})}{({n - j})}}}} + b_{n}}} & {{m > {{- K} + 1}},{1 \leq n \leq {N_{b} +}}} \\ \quad & {K + m - 1} \end{matrix} \right\} & (15) \end{matrix}$

here, a_(n)=0(n>N_(a)), b_(n)=0(n>N_(b)), B_(mn)=0(n<1).

Next, the equation (4) is introduced. If the transfer function model from the main shaft position command r_(s)(i) to the main shaft position increment Δy_(s)(i) is obtained by the discrete-time system expressed by the following equation, $\begin{matrix} {{G_{r\quad d}(z)} = \frac{{b_{1}Z^{- 1}} + \cdots + {b_{N_{b}}Z^{- N_{b}}}}{1 - {a_{1}Z^{- 1}} - \cdots - {a_{N_{a}}Z^{- N_{a}}}}} & (16) \end{matrix}$

the input and output model can be expressed as follows. $\begin{matrix} {{\Delta \quad {{\hat{y}}_{s}(i)}} = {{\sum\limits_{n = 1}^{N_{a}}{a_{n}\Delta \quad {{\hat{y}}_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}\quad {r_{s}\left( {i - n} \right)}}}}} & (17) \end{matrix}$

At the time i, the measured value Δy_(s)(i−n) (n≧K) of the main shaft position increment to the time (i−K) is obtained. Therefore, when the main shaft position increment after that is predicted using the measured values by the following equation, the above equation (4) can be obtained. $\begin{matrix} {{{\Delta \quad y_{s}*\left( {i - K + 1} \right)} = {{\sum\limits_{n = 1}^{N_{a}}{a_{n}\Delta \quad {y_{s}\left( {i - K + 1 - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}\quad {r_{s}\left( {i - K + 1 - n} \right)}}}}}{m = {{- K} + 1}}} & \text{(18a)} \\ {{{\Delta \quad y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = 1}^{m + K - 1}{a_{n}\Delta \quad y_{s}*\left( {i + m - n} \right)}} + {\sum\limits_{n = {m + K}}^{N_{a}}{a_{n}\Delta \quad {y_{s}\left( {i + m - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b}}{b_{n}\quad {r_{s}\left( {i + m - n} \right)}}}}}{m > {{- K} + 1}}} & \text{(18b)} \end{matrix}$

In this case, the coefficients A_(mn) and B_(mn) are given by the following equations. $\begin{matrix} \left. \begin{matrix} {A_{{({{- K} + 1})}n} = a_{({n - K + 1})}} & {{m = {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {A_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}A_{{({m - j})}n}}} + a_{({n + m})}}} & {{m > {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {B_{{({{- K} + 1})}n} = b_{n}} & {{m = {{- K} + 1}},{1 \leq n \leq N_{b}}} \\ {B_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}B_{{({m - j})}{({n - j})}}}} + b_{n}}} & {{m > {{- K} + 1}},{1 \leq n \leq {N_{b} +}}} \\ \quad & {K + m - 1} \end{matrix} \right\} & (19) \end{matrix}$

here, a_(n)=0(n>N_(a)), b_(n)=0(n>N_(b)) B_(mn)=0(n<1).

When the sampling periods of the main shaft device 2 and the subsidiary shaft device 3 are 1/n of that of the command generating device 1, the inputted position command increment may be multiplied by the multiplier of 1/n.

As described above, the synchronous control apparatus of the first embodiment comprises: a command generating device 1; a main shaft device 2; and a subsidiary shaft device 3, and further the command generating device 1 includes: a memory 7 for storing the main shaft position command increments inputted into a plurality of time points from the past to the present; an output means 7′ for outputting the main shaft position command increment Δr_(s)(i) inputted at sampling of (M−1) times before out of the values stored in the memory 7; a memory 8 for storing the main shaft position increments inputted into a plurality of time points from the past to the present; a calculator 9 for finding prediction values of a plurality of main shaft position increments for several times of future samplings by the dynamic characteristic model of the main shaft device including the delay corresponding to d times of the samplings and also by the stored main shaft position command increments and the main shaft position increment; and a converter 10 for finding a plurality of subsidiary shaft future position command increments by a plurality of prediction values of the main shaft position increments obtained by the calculator. Due to the above arrangement, it is possible to realize a synchronous control of high accuracy. Further, it is possible to provide a synchronous control apparatus, the accuracy of synchronization of which is not deteriorated even if the input of the position command and the detection of the main shaft position are delayed.

FIG. 2 is a block diagram showing a configuration of the synchronous control apparatus according to the second embodiment of the present invention. Same reference numerals are used to indicate common parts in FIGS. 1 and 2. In the synchronous control apparatus of the first embodiment, there is a possibility that the accuracy of synchronization is deteriorated when the dynamic characteristic of the main shaft in the case of normal rotation and that in the case of reverse rotation are different from each other. In order to solve the above problems, the synchronous control apparatus of the second embodiment includes a fine adjustment device 21 having a function of changing over the multiplier K₁ according to the positive and the negative of the main position increment Δy_(s).

The fine adjustment device 21 outputs a signal obtained when the signal K₂Δr_(s), which is obtained by multiplying the main shaft position command increment Δr_(s) stored in the memory 7 of the command generating device 1 by a multiplier, and the signal K₁Δy_(s) obtained by multiplying the main shaft position increment Δy_(s) (or K₁Δy_(s)* obtained by multiplying the prediction value Δy_(s)* of the main shaft position increment) stored in the memory 8 of the command generating device 1 by a multiplier, are added to each other. As described above, the multipliers K₁ and K₂ are, parameters used for fine adjustment of asynchronization. These multipliers K₁ and K₂ are previously stored in the fine adjustment device 21 in the process of adjustment. Especially, concerning the multiplier K₁, two types of multipliers K_(1P) and K_(1N) are stored so that they can be used in the normal and the reverse rotation of the main shaft. When the main shaft position increment Δy_(s)(i−K) is not less than zero, the multiplier K_(1P) is used, and when the main shaft position increment Δy_(s)(i−K) is negative, the multiplier K_(1N) is used.

Setting of K_(1P) and K_(1N) is conducted as follows. First, the adjustment is conducted under the condition that the main shaft is rotated normally, and the multiplier K_(1P) for normal rotation is set and stored. Next, the adjustment is conducted again under the condition that the main shaft is rotated reversely, and the multiplier K_(1N)=K_(1P)+K_(PN) for reverse rotation is set and stored. In this case, K_(PN) is a coefficient used for correcting a difference of the dynamic characteristic of the main shaft. K_(1N) may be calculated by the above equation while K_(PN) is stored instead of K_(1N). In this connection, K₂ is set so that the asynchronization can be reduced when the main shaft is in an accelerating and decelerating condition.

As described above, the second embodiment includes a fine adjustment device 21 for inputting a signal, which is obtained when a signal, in which the increment in the sampling period of the main shaft position or the prediction value is multiplied by the multiplier of K₁, and a signal, in which the main shaft position command increment is multiplied by the multiplier of K₂, are added to each other, into the subsidiary shaft motor control device as a fine adjustment signal for adjusting the asynchronization. In this case, two types of multipliers K₁ are stored and changed over according to the positive and negative of the main shaft position increment. Due to the foregoing, even if the dynamic characteristic of the main shaft in the case of normal rotation and that in the case of reverse rotation are different from each other, it is possible to provide a synchronous control apparatus, the accuracy of synchronization of which is not deteriorated.

FIG. 3 is a block diagram showing a configuration of the synchronous control apparatus according to the third embodiment of the present invention. Same reference numerals are used to indicate common parts in FIGS. 1 and 3.

In the synchronous control apparatus of the first embodiment, there is a possibility that the prediction accuracy of the main shaft position increment is somewhat deteriorated by the torque saturation or disturbance torque. In order to solve the above problems, in the synchronous control apparatus of the third embodiment, a prediction value, which was found in the sampling of 1 time before, is considered when the prediction value of the main shaft position increment is found.

In FIG. 3, at the present moment i, an increment Δr_(s)(i+M−1) in the sampling period of the main shaft position command and an increment Δy_(s)(i−K) of the main shaft position at the sampling of K (K≧0) times before are inputted into the command generating device 1, and the command generating device 1 outputs an increment Δr_(s)(i) of the main shaft position command at the present moment and a plurality of increments Δr_(z)(i+m), m=D+1, D+2, . . . , D+M of the subsidiary shaft future position command, which are for several times of future samplings, are outputted from the command generating device 1.

The calculator 22 finds a plurality of prediction values Δy_(s)*(i+m), m=D, D+1, D+2, . . . , D+M of the main shaft position increment for several times of future samplings by the dynamic characteristic model of the main shaft device 2 including the delay factor 4 and also by the stored main shaft position command increment and the main shaft position increment. The converter 10 finds a plurality of subsidiary shaft future position command increments Δr_(z)(i+m), m=D, D+1, D+2, . . . , D+M by the prediction values of a plurality of main shaft position increments which have been obtained.

A plurality of subsidiary shaft future position command increments are delayed by D (D≧0) times of samplings according to the delay factor 6, and Δr_(z) (i+m), m=0, 1, 2, . . . , M are inputted into the subsidiary shaft device 3. The predictive controller 15 determines the speed command v(i) by predictive control so that the position of the subsidiary shaft for several times of future samplings, which has been predicted by the dynamic characteristic model of the subsidiary shaft motor 17 including the subsidiary shaft controller 16 and also predicted by the subsidiary shaft position increment Δy_(z)(i), can be made to coincide with the subsidiary shaft future position commands r_(z) (i+m), m=1, 2, . . . , M which are determined by a plurality of subsidiary shaft future position command increments Δr_(z) (i+m), m=1, 2, . . . , M. In the case where the predictive controller disclosed in Japanese Patent Application No. 5-197956 is used for this predictive controller 15, the speed command v(i) is determined by the following equation. $\begin{matrix} {{v(i)} = {{\sum\limits_{m = 1}^{M_{z}}{v_{m}\Delta \quad {r_{z}\left( {i + m} \right)}}} - {\sum\limits_{n = 0}^{N_{az} - 1}{p_{n}\Delta \quad {y_{z}\left( {i - n} \right)}}} + {{Ee}(i)} - {\sum\limits_{n = 1}^{N_{bz} - 1}{g_{n}{v\left( {i - n} \right)}}}}} & (20) \end{matrix}$

where M_(z) is a prediction horizon, e(i) is a positional deviation(=r_(z)(i)−y_(z)(i)), N_(az), N_(bz) are degrees of the dynamic characteristic model of the subsidiary shaft, and v_(m), p_(n), E, g_(n) are constants for predictive control.

The speed command v(i) found by the predictive control is added by the adder 20 to an output signal of a fine adjustment device 19 which is delayed by D (D≧0) times of the samplings from the v(i), and the thus added value is inputted into the subsidiary shaft controller 16 as a speed command.

The fine adjustment device 19 outputs a signal in which the signal K₂Δr_(s), which is obtained when the main shaft position command increment Δr_(s) stored in the memory 7 of the command generating device 1 is multiplied by a multiplier, and the signal K₁Δy_(s) obtained by multiplying the main shaft position increment Δy_(s) (or K₁Δy_(s)* obtained by multiplying the prediction value Δy_(s)* of the main shaft position increment) stored in the memory 8 of the command generating device 1 by a multiplier, are added to each other. In this case, the multipliers K₁ and K₂ are variable, and can be used for fine adjustment of asynchronization.

The calculator 22 includes: means for calculating and storing the main shaft position commands r_(s)(i+M−1), r_(s)(i+M−2), . . . , r_(s)(i−K−N_(b)) by the main shaft position command increment Δr_(s) stored in the memory 7; means for calculating and storing the main shaft positions y_(s)(i−K), y_(s)(i−K−1), . . . , y_(s)(i−K−N_(a)) by the main shaft position increment Δy_(s) stored in the memory 8; and means for determining the prediction value Δy_(s)*(i+m), m=D+1, D+2, . . . , D+M of the main shaft position increment by the following equation according to the main shaft position command r_(s) and the main shaft position y_(s) which are stored in these means. $\begin{matrix} {{y_{s}*\left( {i + \frac{m}{i}} \right)} = {{\sum\limits_{n = K}^{N_{a} + K}{A_{mn}{y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m}{B_{mn}{r_{s}\left( {i + m - n} \right)}}}}} & (21) \\ {{{\Delta \quad y_{s}*\left( {i + D} \right)} = {{\Delta \quad y_{s}*\left( {i + \frac{D}{i}} \right)} - {\Delta \quad y_{s}*\left( {i - 1 + \frac{D}{i - 1}} \right)}}}\quad {m = D}} & \text{(22a)} \\ {{{\Delta \quad y_{s}*\left( {i + m} \right)} = {{\Delta \quad y_{s}*\left( {i + \frac{m}{i}} \right)} - {\Delta \quad y_{s}*\left( {i + m - \frac{1}{i}} \right)}}}\quad {{m = {D + 1}},{D + 2},\ldots \quad,{D + M}}} & \text{(22b)} \end{matrix}$

here, $y_{s}*\left( \frac{i_{2}}{i_{1}} \right)$

is a predicted value of the main shaft position at the time i₂ which is predicted at the time i₁.

When the discrete-time system expressed by the equation of $\begin{matrix} {{{G_{ry}(z)} = \frac{{b_{1}Z^{- 1}} + \cdots + {b_{N_{b}}Z^{- N_{b}}}}{1 - {a_{1}Z^{- 1}} - \cdots - {a_{N_{a}}Z^{- N_{a}}}}},} & (23) \end{matrix}$

is used as a transfer function model from the main shaft position command r_(s)(i) to the main shaft position y_(s)(i), the coefficients A_(mn) and B_(mn) can be given by the following equations in the same manner as that of the synchronous control apparatus of the first embodiment. $\begin{matrix} \left. \begin{matrix} {A_{mK} = {1 + {\hat{a}}_{mK}}} & {n = K} \\ {A_{mn} = {{\hat{a}}_{mn} - a_{({n - K})}}} & {{K + 1} \leq n \leq {N_{a} + K}} \\ {B_{mn} = {{\hat{b}}_{mn} - b_{({n - K - m})}}} & {1 \leq n \leq {N_{b} + K + m}} \end{matrix} \right\} & (24) \end{matrix}$

here, b_(n)=0(n<1), â ;_(m(N) _(a) _(+K))={circumflex over (b)}_(m(N) _(b) _(+K+m))=0. $\begin{matrix} \left. \begin{matrix} {{\hat{a}}_{{({{- K} + 1})}n} = a_{({n - K + 1})}} & {{m = {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {{\hat{a}}_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}{\hat{a}}_{{({m - j})}n}}} + a_{({n + m})}}} & {{m > {{- K} + 1}},{K \leq n \leq {N_{a} + K - 1}}} \\ {{\hat{b}}_{{({{- K} + 1})}n} = b_{n}} & {{m = {{- K} + 1}},{1 \leq n \leq N_{b}}} \\ {{\hat{b}}_{mn} = {{\sum\limits_{j = 1}^{m + K - 1}{a_{j}{\hat{b}}_{{({m - j})}{({n - j})}}}} + b_{n}}} & {{m > {{- K} + 1}},{1 \leq n \leq {N_{b} +}}} \\ \quad & {K + m - 1} \end{matrix} \right\} & (25) \end{matrix}$

here, a_(n)=0(n>N_(a)), b_(n)=0(n>N_(b)), {circumflex over (b)}_(mn)=0(n<1).

As described above, the synchronous control apparatus of the third embodiment includes: a command generating device 1 for finding and outputting the subsidiary shaft future position command increment Δr_(z) by the predicted value of the main shaft position increment; a main shaft device 2 for outputting the main shaft position increment Δy_(s); a subsidiary shaft device 3 for conducting the predictive control on the subsidiary shaft motor 17; and a fine adjustment device 19 for inputting a fine adjustment signal to correct the asynchronization into the subsidiary shaft device 3, wherein the predicted value of the main shaft position increment is determined by the calculator 22 according to the predicted value of the main shaft position which has been predicted at the time (i−1) before one sampling. Due to the foregoing, it is possible to provide a synchronous control apparatus, the prediction accuracy of the main shaft position increment of which is not deteriorated by the torque saturation or the disturbance torque.

As described above, it is possible for the present invention to provide a synchronous control apparatus capable of conducting a synchronous motion of an accuracy higher than that of the prior art irrespective of the delay of input of the position command increment and also irrespective of the delay of detection of the main shaft position increment.

According to the present invention, it is possible to correct a difference between the dynamic characteristic in the case of normal rotation of the main shaft and the dynamic characteristic in the case of reverse rotation. Therefore, it is possible to realize a synchronous control apparatus capable of conducting a synchronous motion, the accuracy of which is higher than that of the synchronous control apparatus of the prior art.

According to the present invention, when the predicted value of the main shaft position increment is found, the predicted value which was found in the past by one sampling is considered. Therefore, the accuracy of prediction of the main shaft position increment is enhanced to be higher than that of the conventional apparatus. As a result, it is possible to realize a synchronous control apparatus, the accuracy of synchronous motion of which is higher than that of the prior art. 

What is claimed is:
 1. A synchronous control apparatus by which a subsidiary shaft motor is driven synchronously with a main shaft motor, comprising: a command generating device into which an increment of the main shaft position command Δr_(s)(i+M−1) of a (i+M−1)th sampling period is inputted and also an increment of the main shaft position Δy_(s)(i−K), with K (K≧0), of a (i−K)th sampling period is inputted, and from which an increment of the main shaft position command Δr_(s)(i) of a present sampling period is outputted and also a plurality of increments of the subsidiary shaft future position command Δr_(z)(i+m), with m=D+1, D+2, . . . , D+M, of corresponding future sampling periods are outputted; a main shaft device into which a signal of the main shaft position command increment Δr_(s)(i−d) is inputted after being delayed by d (d≧0) sampling periods for controlling the drive of the main shaft motor, and from which an increment of the main shaft position Δy_(s)(i) is outputted; and a subsidiary shaft device into which signals Δr_(z)(i+m), with m=1, 2, . . . , M, of the plurality of subsidiary shaft future position command increment are inputted after being delayed by D (D≧0) sampling periods, and which controls the drive of the subsidiary shaft motor so that the subsidiary shaft position predicted by the dynamic characteristic model of the subsidiary shaft can be made to coincide with the future position command of the subsidiary shaft, wherein i is a present time, M is a number of sampling periods into the future, and K is a number of sampling periods into the past, and wherein the command generating device includes: first memory means for storing the main shaft position command increments inputted corresponding to a plurality of time points from the past to the present, output means for outputting the main shaft position command increment Δr_(s)(i) inputted (M−1) sampling periods earlier and stored in the first memory means; second memory means for storing the main shaft position increments inputted corresponding to a plurality of time points from the past to the present; a calculator for finding a plurality of predicted values of main shaft position increments for a plurality of future sampling periods according to the dynamic characteristic model of the main shaft device including delay factor of d sampling periods and also according to the stored main shaft position command increments and the stored main shaft position increments; and a converter for finding a plurality of subsidiary shaft fixture position command increments according to the plurality of predicted values of the main shaft position increments obtained by the calculator.
 2. The synchronous control apparatus as set forth in claim 1, wherein the calculator of the command generating device includes: means for calculating and storing the main shaft position command r_(s) by the main shaft position command increment Δr_(s) stored in the first memory means; means for calculating and storing the main shaft position y_(s) by the main shaft position increment Δy_(s) stored in the second memory means; and means for determining the predicted values Δy_(s) *(i+m), m=D+1, D+2, . . . , D+M of the main shaft position increment by the main shaft position command r_(s) and the main shaft position y_(s) stored in these means, by the equations of ${y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = K}^{N_{a} + K}{A_{mn}{y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m}{B_{mn}{r_{s}\left( {i + m - n} \right)}}}}$

Δy_(s)*(i+m)=y_(s)*(i+m)−y_(s)*(i+m−1) here, N_(a), N_(b), A_(mn) and B_(mn) are constants found by the dynamic characteristic model of the main shaft device.
 3. The synchronous control apparatus as set forth in claim 1, wherein the calculator of the command generating device including: means for determining the predicted values Δy_(s)*(i+m), m=D+1, D+2, . . . , D+M of the main shaft position increment by the main shaft position command increment Δr_(s) stored in the first memory means and the main shaft position increment Δ_(y) _(s) stored in the second memory means, by the equation of ${\Delta \quad y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = K}^{N_{a} + K - 1}{A_{mn}\Delta \quad {y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m - 1}{B_{mn}\Delta \quad {r_{s}\left( {i + m - n} \right)}}}}$

here, N_(a), N_(b), A_(mn) and B_(mn) are constants found by the dynamic characteristic model of the main shaft device.
 4. The synchronous control apparatus as set forth in claim 1, wherein the calculator of the command generating device includes: means for calculating and storing the main shaft position command r_(s) by the main shaft position command increment Δr_(s) stored in the first memory means; and means for determining the predicted values Δy_(s)*(i+m), m=D+1, D+2, . . . , D+M of the main shaft position increment by the main shaft position command r_(s) stored in the means and also by the main shaft position increment Δy_(s) stored in the second memory means, by the equation of ${\Delta \quad y_{s}*\left( {i + m} \right)} = {{\sum\limits_{n = K}^{N_{a} + K - 1}{A_{mn}\Delta \quad {y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m - 1}{B_{mn}{y_{s}\left( {i + m - n} \right)}}}}$

here, N_(a), N_(b), A_(mn) and B_(mn) are constants found by the dynamic characteristic model of the main shaft device.
 5. The synchronous control apparatus as set forth in claim 1, further comprising: means for adding a signal obtained by multiplying the main shaft position command increment Δr_(s) stored in the first memory means of the command generating device to a signal obtained by multiplying one of the main shaft position increment Δy_(s) stored in the second memory means and a predicted value Δy_(s)* of the main shaft position increment obtained by the calculator; means for adding a signal of the added value delayed by D (D≧0) times of samplings to the calculated predictive control value in the subsidiary shaft device; and means for finely adjusting the synchronization by changing the multipliers.
 6. A synchronous control apparatus for driving a subsidiary motor synchronously with a main motor comprising: a fine adjustment device for inputting a signal into a subsidiary shaft motor control device as a fine adjustment signal for adjusting the synchronization of the subsidiary motor, the signal obtained by adding a signal, in which an increment of the main shaft position in the sampling period or the predicted value is multiplied by a multiplier K₁, to a signal, in which the main shaft position command increment is multiplied by a multiplier K₂; and means for switching the value of the multiplier K₁ according to the positive or negative of the main shaft position increment.
 7. The synchronous control apparatus as set forth in claim 6, wherein the switching means has a value of multiplier K₁ in the case of normal rotation of the main shaft and also the switching means has a value of multiplier K₁ in the case of reverse rotation of the main shaft, the value of normal rotation of the main shaft is selected when the main shaft position increment is not lower than zero, and the value of reverse rotation of the main shaft is selected when the main shaft position increment is negative.
 8. A synchronous control apparatus by which a subsidiary shaft motor is driven synchronously with a main shaft motor, comprising: a command generating device including: a memory means into which an increment of the main shaft position command Δr_(s)(i+M−1) of a (i+M−1)th sampling period and an increment of the main shaft position Δy_(s)(i−K), with K(K≧0), of an (i−K)th sampling period are inputted, the memory means respectively storing the inputted main shaft position command increment and the main shaft position increment, an output means for outputting the main shaft position command increment Δr_(s)(i) of a present sampling period inputted (M−1) sampling periods earlier into the memory means, a calculator for finding a plurality of predicted values of main shaft position increments for a plurality of future sampling periods, and a converter for finding and outputting a plurality of subsidiary shaft future position command increments Δr_(z)(i+m), with m=D, D+1, D+2, . . . , D+M, according to the plurality of predicted values of the main shaft position increments obtained by the calculator wherein i is a present time, M is a number of sampling periods into the future, and K is a number of sampling periods into the past, and; a main shaft device into which a signal Δr_(s)(i−d) of the mail shaft position command increment delayed d (d≧0) sampling periods is inputted for a controlling the drive of the main shaft motor, and from which an increment of the main shaft position Δy_(s)(i) is outputted; a subsidiary shaft device into which signals Δr_(z)(i+m), with m=0, 1, . . . , M, of the plurality of subsidiary shaft future position command increment delayed D (D≧0) sampling periods are inputted, and which controls the drive of the subsidiary shaft motor so that the subsidiary shaft position predicted according to the dynamic characteristic model of a subsidiary shaft can be made to coincide with the future position command of the subsidiary shaft; and a fine adjustment device for inputting a fine adjustment signal delayed D (D≧0) sampling periods for adjusting a synchronization of the subsidiary shaft motor control device, the fine adjustment signal obtained by adding a first signal in which one of the increment of the main shaft position and the predicted value is multiplied by a first multiplier with a second signal in which the main shaft position command increment is multiplied by a second multiplier, wherein the calculator of the command generating device includes: means for calculating and storing the main shaft position command r_(s) according to the main shaft position command increment Δr_(s) stored in the memory means; means for calculating and storing the main shaft position y_(s) according to the main shaft position increment Δy_(s) stored in the memory means; and means for determining the predicted value Δy_(s)*(i+m) of the main shaft position increment according to the equations of $\begin{matrix} {{y_{s}*\left( \frac{i + m}{i} \right)} = {{\sum\limits_{n = K}^{N_{a} + K}{A_{mn}{y_{s}\left( {i - n} \right)}}} + {\sum\limits_{n = 1}^{N_{b} + K + m}{B_{mn}{r_{s}\left( {i + m - n} \right)}}}}} \\ {{{\Delta \quad y_{s}*\left( {i + D} \right)} = {{y_{s}*\left( \frac{i + D}{i} \right)} - {y_{s}*\left( \frac{i - 1 + D}{i - 1} \right)}}}\quad {m = D}} \\ {{{\Delta \quad y_{s}*\left( {i + m} \right)} = {{y_{s}*\left( \frac{i + m}{i} \right)} - {y_{s}*\left( \frac{i + m - 1}{i} \right)}}}\quad {{m = {D + 1}},{D + 2},\ldots \quad,{D + M}}} \end{matrix}$

here, y_(s)*(i₂/i₁) is a predicted value of the main shaft position at the time i₂ which is predicted at the time i₁ and N_(a), N_(b), A_(mn), and B_(mn) are constants found by the dynamic characteristic model of the main shaft device. 